<template>
	<view>
		<!-- 1. 名称 -->
		<view class="title">
			{{goodsInfo.name}}
		</view>
		<!-- 2. 商品图片 -->
		<image :src="goodsInfo.pic" class="img" mode=""></image>
		<!-- 3. 信息介绍 -->
		<view class="info">
			<view class="money">
				<text class="price">￥{{goodsInfo.price}}</text>
				<text class="number">销量：{{goodsInfo.buynum}}件</text>
			</view>
			<view class="desc">
				<view class="goodstitle">
					产品产地：{{goodsInfo.city}}
				</view>
				<view class="list">
					<view class="content">0) {{goodsInfo.description}}</view>
					<view class="content">1) 100%桑蚕丝填充，丝丝精粹不掺杂</view>
					<view class="content">2) 创新井字拉网工艺，桑蚕丝不易黏连结块</view>
					<view class="content">3) 两种面料可选，贡缎手感细腻，竹棉清爽透气</view>
					<view class="content">4) AB双面设计，多种活性印花不易褪色</view>
				</view>
			</view>
		</view>
		<!-- 4. 加购信息 
			options	    Array	-	组件参数
			buttonGroup	Array	-	组件按钮组参数
			fill	    Boolean	false	按钮是否平铺
		-->
		<view class="height">
			<view class="addGoods">
				<uni-goods-nav :options="options" :fill="true" :button-group="buttonGroup" @click="onClick"
					@buttonClick="buttonClick" />
			</view>
		</view>

	</view>
</template>

<script>
	import { mapMutations } from 'vuex'
	export default {
		data() {
			return {
				//正常：传递id标识 进入详情界面 获取接口 
				//非正常：点击商品--传递了整个商品数据传递给详情页 无需再次请求 --省事的后台
				goodsInfo: {}, //详情数据 
				options: [{
					icon: 'chat',
					text: '客服'
				}, {
					icon: 'shop',
					text: '店铺',
				}, {
					icon: 'cart',
					text: '购物车',
					info: 0
				}],
				buttonGroup: [
					{
						text: '加入购物车',
						backgroundColor: 'linear-gradient(90deg, #FFCD1E, #FF8A18)',
						color: '#fff'
					},
					{
						text: '立即购买',
						backgroundColor: 'linear-gradient(90deg, #FE6035, #EF1224)',
						color: '#fff'
					}
				],

			}

		},
		onLoad(options) {
			// this.goodsInfo = JSON.parse(options.goodsInfo);
			//根据传递过来的id 获取商品详情界面---------------
			console.log('options----',options);
			this.goodsDetail(options.id)
		},
		methods: {
			...mapMutations('cart',['addCart']),
			//获取商品详情--------------
			async goodsDetail(id){
				let res = await uni.$http(uni.$base.goodsDetail,{loading:true},'get',{id})
				console.log('商品详情-------',res);
				this.goodsInfo = res.data[0];
			},
			//点击加入购物车左侧列表
			onClick(e) {
				console.log('e---ee', e);
				//进入购物车界面---tabBar页面 ---------------
				if(e.index===2){
					uni.switchTab({
						url:'/pages/cart/cart'
					})
				}
			},
			//点击加入购物车-立即购买按钮 
			/* 
				参数	是	name	string	产品名称
				参数	是	pic	string	商品的图片名字
				参数	是	num	number	商品数量-可以默认1
				参数	是	info	string	商品的简介
				参数	是	price	string	商品的价格--加入购物车价格固定的，目前不支持选择价格区间
			 */
			async cartAdd(){
				//获取数据this.goodsinfo 
				let { name,pic,price,id} = this.goodsInfo;
				let info = this.goodsInfo.description;
				let res = await uni.$http(uni.$base.cartAdd,{loading:false,title:'加入成功'},'get',{
					name,pic,num:1,price,info
				})
				console.log('加入购物车----',res);
				/* 
					id: 12
					info: "北京特产御食园茯苓饼500g传统茯苓夹饼休闲零食糕点心小吃美食"
					name: "北京特产御食园茯苓饼500g"
					num: 1
					pic: "http://iwenwiki.com:3002/images/goods/6.webp"
					price: "16.90"
				 */
				let obj={
					id,
					name,
					pic,
					price,
					info,
					num:1
				}
				this.addCart(obj);
				
			},
			//点击加入购物车或者立即购买按钮---事件-----------------------
			buttonClick(e) {
				console.log('buttonClick---', e)
				this.options[2].info++;
				//加入购物车------
				if(e.index===0){
					//请求加入购物车数据---cartAdd 
					this.cartAdd();
				}else{
					//立即购买-------
				}
			}
		}
	}
</script>

<style lang="scss" scoped>
	.title {
		text-align: center;
		font-size: 40rpx;
		line-height: 100rpx;
	}

	.img {
		width: 100%;
		height: 750rpx;
	}

	.info {
		margin: 20rpx;

		.mark {
			margin: 0 30rpx;
			background: #BB2C08;
			color: #fff;
			text-align: center;
			padding: 30rpx 0px;
			border-radius: 20rpx;
			width: 660rpx;
			font-size: 30rpx;
		}

		.money {
			margin-top: 20rpx;

			.price {
				color: red;
				font-size: 40rpx;
			}

			.number {
				padding-left: 40rpx;
				color: #888;
			}
		}

		.desc {
			color: #333;
			margin-top: 20rpx;

			.goodstitle {
				font-weight: bold;
				font-size: 30rpx;
				margin-bottom: 20rpx;
			}

			.content {
				line-height: 60rpx;
				color: #333;
			}
		}
	}

	//加购商品
	.height {
		height: 100rpx;
		background: pink;

		.addGoods {
			position: fixed;
			bottom: 0;
			left: 0;
			right: 0;
			z-index: 99;
		}
	}
</style>
